//
//  JKBaseTableViewController.swift
//  JKWeibo
//
//  Created by albert on 16/5/12.
//  Copyright © 2016年 albert. All rights reserved.
//  四个控制器的基类

import UIKit

class JKBaseTableViewController: UITableViewController {
    
    // 定义标记记录用户登录状态
    var isLogin = JKUserAccount.isLogin()
    
    // 访客视图
    var visitorView: JKVisitorView?
    
    override func loadView() {
        // 判断用户是否登录，如果没有登录就显示访客界面，如果已经登录就显示tableView
        isLogin ? super.loadView() : setupVisitorView()
    }
    
    //MARK: - 内部控制方法 初始化访客视图
    private func setupVisitorView(){
        // 1.创建访客视图
        visitorView = JKVisitorView.viewFromXib("JKVisitorView") as? JKVisitorView
        view = visitorView
        
        // 2.可以直接拿到访客视图的按钮，添加点击事件。不用设置代理那么麻烦。。
        visitorView?.loginButton.addTarget(self, action: "loginBtnClick", forControlEvents: UIControlEvents.TouchUpInside)
        visitorView?.registerButton.addTarget(self, action: "registerBtnClick", forControlEvents: UIControlEvents.TouchUpInside)
        
        // 3.设置导航栏按钮
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "registerBtnClick")
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", style: UIBarButtonItemStyle.Plain, target: self, action: "loginBtnClick")
    }
    
    //MARK: - 点击登录
    @objc private func loginBtnClick(){
        let vc = R.storyboard.jKOAuth.initialViewController!
        
        presentViewController(vc, animated: true, completion: nil)
    }
    
    //MARK: - 点击注册
    @objc private func registerBtnClick(){
        JKLog("注册")
    }
}
